查看原文
其他

Xcode 13.0 和 iOS 15.0 适配

iOS大全 2022-07-03

推荐关注↓

看了掘友的文章后,今天才升级xcode13,跑了一下老项目,发现不少问题,于是记录一下心得。

Xcode13.0

下载后完成,就开始创建一个工程,发现界面变了不少。

一开始是没有那些后缀名的,我直接在Xcode->Preferences里面更改的

这时候我看到上面有一个issues,显示show inline的选项

show inline显示如下

show Minimized是显示如下:

对比可以发现1个简洁很多,1个是错误明显很多,就看个人喜爱了。

bulid了一下项目,发现没有buildSuccess的提示了,替代方案可以选择通知,直接在通知,找到xcode,选择提示就可以。

效果如下:

但感觉还是没有以前好,总是弹通知也感觉有点烦。

iOS15.0

手机升级到了iOS15.0,发现tableView的section Height有偏移

这是因为iOS 15 的 UITableView又新增了一个新属性:sectionHeaderTopPadding

他会给每一个section header 增加一个默认高度,当我们 使用 UITableViewStylePlain 初始化 UITableView的时候,就会发现,系统给section header增高了22像素。

解决方案:

   if (@available(iOS 15.0, *)) {
            _tableView.sectionHeaderTopPadding = 0;
        }

iphone13机型

// iPhone12,iPhone12Pro,iPhone13,iPhone13Pro
#define iPhone12 ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1170, 2532), [[UIScreen mainScreen] currentMode].size) : NO)
// iphone12ProMax,iphone13ProMax
#define iPhone12ProMax ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1284, 2778), [[UIScreen mainScreen] currentMode].size) : NO)

老项目都是这么写的,我也不想改了,那就再加一个mini吧

// iPhone13mini
#define iPhone13mini ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1080, 2340), [[UIScreen mainScreen] currentMode].size) : NO)

后面如果遇到有什么问题,再补充好了。

转自:掘金 可爱亲宝宝

https://juejin.cn/post/7018495854168244260

- EOF -

推荐阅读  点击标题可跳转

1、iPhone 13/Pro拆解及其主要芯片型号和零部件供应商

2、今年 12 月终结“苹果税”的愿望落空了

3、升级到 Xcode 13 碰到的问题


看完本文有收获?请分享给更多人

关注「 iOS大全 」加星标,关注 iOS 动态

点赞和在看就是最大的支持❤️

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存